import { commonProps } from "../../libs/config";

const labelPosTypes = ["bottom", "top", "left", "right"];


export const iconProps = {
	...commonProps,
	// 图标类名
	name: {
		type: String
	},
	// 图标颜色，可接受主题色
	color: {
		type: String
	},
	// 字体大小，单位px
	size: {
		type: [String, Number]
	},
	// 是否显示粗体
	bold: {
		type: Boolean,
		default:null
	},
	// 点击图标的时候传递事件出去的index（用于区分点击了哪一个）
	index: {
		type: [String, Number]
	},
	// 触摸图标时的类名
	hoverClass: {
		type: String
	},
	// 自定义扩展前缀，方便用户扩展自己的图标库
	customPrefix: {
		type: String
	},
	// 图标右边或者下面的文字
	label: {
		type: [String, Number]
	},
	// label的位置
	labelPos: {
		type: String,
		values: labelPosTypes
	},
	// label的大小
	labelSize: {
		type: [String, Number]
	},
	// label的颜色
	labelColor: {
		type: String
	},
	// label与图标的距离
	space: {
		type: [String, Number]
	},
	// 图片的mode
	imgMode: {
		type: String
	},
	// 用于显示图片小图标时，图片的宽度
	width: {
		type: [String, Number]
	},
	// 用于显示图片小图标时，图片的高度
	height: {
		type: [String, Number],
	},
	// 用于解决某些情况下，让图标垂直居中的用途
	top: {
		type: [String, Number],
	},
	// 是否阻止事件传播
	stop: {
		type: Boolean,
		default:null
	},
};

export const iconEmits = {
	click: (i?: string | number) => true,
};
